package com.neu.flashmall.product.service.impl;


import com.neu.flashmall.product.entity.PmsProductAttrValue;
import com.neu.flashmall.product.entity.PmsSkuSaleAttrValue;
import com.neu.flashmall.product.mapper.PmsProductAttrValueMapper;
import com.neu.flashmall.product.mapper.PmsSkuSaleAttrValueMapper;
import com.neu.flashmall.product.service.PmsProductAttrValueService;
import com.neu.flashmall.product.service.PmsSkuSaleAttrValueService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

@Service
public class PmsSkuSaleAttrValueServiceImpl implements PmsSkuSaleAttrValueService {

    @Resource
    private PmsSkuSaleAttrValueMapper pmsSkuSaleAttrValueMapper;

    @Override
    public String addAttrValue(PmsSkuSaleAttrValue pmsSkuSaleAttrValue) {
        int result = pmsSkuSaleAttrValueMapper.insert(pmsSkuSaleAttrValue);
        if(result == 1){
            return "添加属性值成功";
        }
        return "数据库异常";
    }

    @Override
    public int deleteBySkuId(Long id){
        return pmsSkuSaleAttrValueMapper.deleteBySkuId(id);
    }

    @Override
    public String deleteAttrValue(Long id) {
        int result = pmsSkuSaleAttrValueMapper.deleteByPrimaryKey(id);
        if(result == 1) return "删除成功";
        return "数据库异常";
    }

    @Override
    public String updateAttrValue(PmsSkuSaleAttrValue pmsSkuSaleAttrValue) {
        if(pmsSkuSaleAttrValue.getId() == null) return "id不能为空";
        int result = pmsSkuSaleAttrValueMapper.updateByPrimaryKeySelective(pmsSkuSaleAttrValue);
        if(result == 1) return "更新成功";
        return "数据库异常";
    }

//    @Override
//    public int canDeleteAttr(Long id) {
//        return pmsSkuSaleAttrValueMapper.selectByAttrId(id).size();
//    }
//
//    @Override
//    public int deleteBySpuId(Long id) {
//        return this.pmsSkuSaleAttrValueMapper.deleteBySpuId(id);
//    }

    @Override
    public List<Long> getSkuAddAttrId(Long skuId) {
        return this.pmsSkuSaleAttrValueMapper.selectSkuAddAttrId(skuId);
    }

    @Override
    public List<PmsSkuSaleAttrValue> getBySkuId(Long skuId) {
        return pmsSkuSaleAttrValueMapper.getBySkuId(skuId);
    }

    @Override
    public List<PmsSkuSaleAttrValue> selectByAttrId(Long attrId) {
        return pmsSkuSaleAttrValueMapper.selectByAttrId(attrId);
    }
}
